Network-enabled fuel dispensing system

ABSTRACT

A system that includes a fuel dispenser terminal and a remote controller. The fuel dispenser terminal is configured to send a service request for a fuel purchase to the remote controller and receive a personalized offer in response to sending the service request. The fuel dispenser terminal is further configured to display the personalized offer, receive a user response indicating the personalized offer was accepted, and send the user response to the remote controller. The fuel dispenser terminal is further configured to receive an authorization token for retrieving the personalized offer and output the authorization token to the customer. The remote controller is configured to update the service request by adding a purchase associated with the personized offer to the fuel purchase, send an encrypted service request to a service processor, generate the authorization token, and send the authorization token to the fuel dispenser terminal.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. patent application Ser. No.16/408,251 filed May 9, 2019, by Vivek Malik et al., and entitled“NETWORK-ENABLED FUEL DISPENSING SYSTEM”, which is incorporated hereinby reference.

TECHNICAL FIELD

The present disclosure relates generally to fuel dispenser terminals,and more specifically to information access control using anetwork-enabled fuel dispensing system.

BACKGROUND

Conventional fuel dispenser terminals are typically only configured tofacilitate dispensing fuel to a customer. These terminals areill-equipped to send and receive information to perform otheroperations. For example, these terminals are not network-enabled (e.g.connected to the Internet) devices and lack the capability to makeinformation requests to remote data sources. Relying on informationstored locally in a fuel dispenser terminal is not a viable solutionbecause this requires manually maintaining and updating the informationstored in each fuel dispenser terminal. This inability to accessinformation from remote data sources limits the overall functionality ofconventional fuel dispenser terminals.

SUMMARY

Conventional fuel dispenser terminals are typically only configured tofacilitate dispensing fuel to a customer. These terminals areill-equipped to send and receive information to perform otheroperations. For example, these terminals are not network-enabled (e.g.connected to the Internet) devices and lack the capability to makeinformation requests to remote data sources. Relying on informationstored locally in a fuel dispenser terminal is not a viable solutionbecause this requires manually maintaining and updating the informationstored in each fuel dispenser terminal. This inability to accessinformation from remote data sources limits the overall functionality ofconventional fuel dispenser terminals. Thus, it is desirable to providethe ability to access information from remote data sources to increasethe functionality of existing fuel dispenser terminals.

The system described in the present application provides a technicalsolution to the technical problems discussed above by employing anarchitecture that enables and utilizes network connectivity for fueldispenser terminals. The disclosed system provides several practicalapplications and technical advantages which include 1) converting fueldispenser terminals into network-enabled fuel dispenser terminals and 2)providing the ability to securely exchange information between fueldispenser terminals and remote data sources.

In one embodiment, a network-enabled fuel dispensing system comprises afuel dispenser terminal that is configured to exchange information witha remote controller. The fuel dispenser terminal and the remotecontroller are located at different locations. The fuel dispenserterminal is configured to generate a service request that includes cardinformation associated with a customer. The service request is used bythe fuel dispenser terminal to request a fuel purchase for the customer.The fuel dispenser terminal encrypts the service request and sends theencrypted service request to the remote controller. The remotecontroller decrypts the service request to identify the card informationassociated with the customer. The remote controller uses the cardinformation to determine the identity of the customer and to generate apersonalized offer for the customer based on their identity. The remotecontroller sends the personalized offer to the fuel dispenser terminal.The fuel dispenser terminal receives the personalized offer and displaysthe personalized offer for the customer. The remote controller alsore-encrypts the service request and sends the encrypted service requestto a service processor for authorization to dispense fuel to thecustomer.

In one embodiment, the fuel dispenser terminal is configured to presenta personalized offer to a customer and to receive a user response thatindicates that the personalized offer was accepted. For example, theuser response may indicate that the customer accepts a coupon for aproduct that's available at a store where the fuel dispenser terminal islocated. The fuel dispenser terminal sends the user response to theremote controller to accept the personalized offer. The remotecontroller receives the user response and determines that thepersonalized offer was accepted. The remote controller updates theservice request by adding a purchase of the product associated with thepersonalized offer to a fuel purchase in a service request. The remotecontroller encrypts the updated service request and sends the encryptedservice request to the service processor. The remote controller receivesan authorization confirmation in response to sending the encryptedservice request to the service processor. In response to receiving theauthorization confirmation, the remote controller generates anauthorization token for retrieving the product and sends theauthorization token to the fuel dispenser terminal.

Certain embodiments of the present disclosure may include some, all, ornone of these advantages. These advantages and other features will bemore clearly understood from the following detailed description taken inconjunction with the accompanying drawings and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of this disclosure, reference is nowmade to the following brief description, taken in connection with theaccompanying drawings and detailed description, wherein like referencenumerals represent like parts.

FIG. 1 is a schematic diagram of an embodiment of a network-enabled fueldispensing system;

FIG. 2A is an embodiment of a first portion of an information controlmethod for a network-enabled fuel dispensing system;

FIG. 2B is an embodiment of a second portion of the information controlmethod for the network-enabled fuel dispensing system; and

FIG. 3 is a schematic diagram of an embodiment of a remote controllerfor the network-enabled fuel dispensing system.

DETAILED DESCRIPTION

The system described in the present application provides a technicalsolution to the technical problems discussed above by employing anarchitecture that enables and utilizes network connectivity for fueldispenser terminals. The disclosed system provides several practicalapplications and technical advantages which include 1) converting fueldispenser terminals into network-enabled fuel dispenser terminals and 2)providing the ability to securely exchange information between fueldispenser terminals and remote data sources.

In one embodiment, a network-enabled fuel dispensing system comprises afuel dispenser terminal that is configured to exchange information witha remote controller. The fuel dispenser terminal and the remotecontroller are located at different locations. The fuel dispenserterminal is configured to generate a service request that includes cardinformation (e.g. a card number) associated with a customer. The servicerequest is used by the fuel dispenser terminal to request a fuelpurchase for the customer. For example, a customer may request a fuelpurchase by providing their card information to the fuel dispenserterminal by swiping or inserting their card into the fuel dispenserterminal. The fuel dispenser terminal encrypts the service request andsends the encrypted service request to the remote controller. The remotecontroller decrypts the service request to identify the card informationassociated with the customer. The remote controller uses the cardinformation to determine the identity of the customer and to generate apersonalized offer for the customer based on their identity.

Conventional fuel dispensing systems use end-to-end encryption forinformation that is transmitted between a fuel dispenser terminal and aservice processor. In these systems, the identity of the customer isunknown unless the customer provides an alternative identifier such as aloyalty card number. This means that conventional systems are unable toprovide personalized offers and information for a customer because theidentity of the customer is typically unknown. In contrast, thenetwork-enabled fuel dispensing system is configured to decrypt theservice request before sending the service request to the serviceprocessor. This allows the remote controller to identify the customerbased on their card information regardless of whether the customerprovides any alternative identifiers. The network-enabled fueldispensing system is able to track other purchases and transactions forthe user based on their card information. This allows the remotecontroller to identify offers for products and services that arerelevant to the customer based on the previous transaction historyassociated with the customer's card information. The remote controllersends the personalized offer to the fuel dispenser terminal to presentto the customer. The fuel dispenser terminal receives the personalizedoffer and displays the personalized offer for the customer. For example,the fuel dispenser terminal may display an advertisement or a coupon forproduct on a graphical user interface of the fuel dispenser terminal.The remote controller also re-encrypts the service request and sends theencrypted service request to a service processor for authorization todispense fuel to the customer.

In one embodiment, the fuel dispenser terminal is configured to receivea user response that indicates that a personalized offer was accepted.For example, the user response may indicate that the customer accepts acoupon for a product that's available at a store where the fueldispenser terminal is located. The fuel dispenser terminal sends theuser response to the remote controller to accept the personalized offer.The remote controller receives the user response and determines that thepersonalized offer was accepted. The remote controller updates theservice request by adding a purchase of the product associated with thepersonalized offer to a fuel purchase in the service request. Asdiscussed above, conventional fuel dispensing systems typically useend-to-end encryption for information that is transmitted between thefuel dispenser terminal and the service processor. This means that thesesystems are unable to modify or add additional purchases to requeststhat are sent to the service processor. In contrast, the network-enabledfuel dispensing system is able to modify an existing service requestbefore the remote controller sends the service request to the serviceprocessor. This means that the remote controller can modify and addadditional purchases to the original service request before sending theservice request to the service processor for processing. The remotecontroller encrypts the updated service request and sends the encryptedservice request to the service processor. The remote controller receivesan authorization confirmation in response to sending the encryptedservice request to the service processor. The authorization confirmationindicates that the customer has been approved for the requestedpurchases based on their card information. In response to receiving theauthorization confirmation, the remote controller generates anauthorization token for retrieving the product and sends theauthorization token to the fuel dispenser terminal.

FIG. 1 is an example of a network-enabled fuel dispensing system. FIGS.2A and 2B combine to provide an example of an information control methodfor the network-enabled fuel dispensing system. FIG. 3 is an example ofa device configured implement a remote controller for thenetwork-enabled fuel dispensing system.

Network-Enabled Fuel Dispensing System Architecture

FIG. 1 is a schematic diagram of an embodiment of a network-enabled fueldispensing system 100. In one embodiment, the network-enabled fueldispensing system 100 comprises one or more fuel dispenser terminals102, a local controller 106, and a remote controller 114. Thenetwork-enabled fuel dispensing system 100 may be configured as shown inFIG. 1 or in any other suitable configuration.

Fuel Dispenser Terminals

The fuel dispenser terminals 102 are located at a first location 103.For example, the fuel dispenser terminals 102 may be located on theproperty of a gas station or a convenience store 104. The fuel dispenserterminals 102 are configured to dispense fuel to a customer and tocommunicate information between the customer and the remote controller114. An example of the fuel dispenser terminal 102 in operation isdescribed in FIGS. 2A-2B.

A fuel dispenser terminal 102 comprises a fuel dispensing system 110operably coupled to a user interface 108. The fuel dispensing system 110may comprise hydraulics, pumps, motors, piping, a ventilation system,switches, electronics, any other suitable components, or combination ofcomponents, as would be appreciated by one of ordinary skill in the art.The fuel dispensing system 110 is configured to control how fuel isdispensed to a customer based on control signals from the user interface108. For example, the fuel dispensing system 110 may be configured toreceive a first control signal that triggers the fuel dispensing system110 to initiate a flow of fuel to a customer and a second control signalthat triggers the fuel dispensing system 110 to terminate the flow offuel to the customer. The fuel dispensing system 110 may be configuredto implement any suitable protocol for dispensing fuel as would beappreciated by one of ordinary skill in the art.

The user interface 108 is configured to send control signals to the fueldispensing system 110 to control how fuel is dispensed to a customer.For example, the user interface 108 may be configured to send a servicerequest 101 to request a fuel purchase for the customer. For example, acustomer may request a fuel purchase by providing their card informationto the fuel dispenser terminal 102 by swiping or inserting their cardinto the fuel dispenser terminal 102. In response to sending a servicerequest 101, the customer will receive an authorization token 122 thatindicates the customer has been approved for a fuel purchase. In otherwords, receiving an authorization token 122 indicates that the fueldispenser terminal 102 is authorized to dispense fuel to the customer.The user interface 108 is further configured to send control signals tothe fuel dispensing system 110 to control flow of fuel to the customerin response to receiving the authentication token 122. The userinterface 108 is in signal communication with the fuel dispensing system110 using any suitable type of wired or wireless connection as would beappreciated by one of ordinary skill in the art. In some embodiments,the authorization token 122 may also be used to retrieve other productsand services purchased by the customer. For example, the fuel dispenserterminal 102 may receive an authorization token 122 that allows thecustomer to retrieve a product from a store 104 at the first location103 in response to the customer accepting an offer for the product.

The user interface 108 is further configured to exchange informationbetween a customer and the remote controller 114 via the localcontroller 106. The user interface 108 is in signal communication withthe local controller 106 using any suitable type of wired or wirelessconnection as would be appreciated by one of ordinary skill in the art.For example, the user interface 108 and the local controller 106 may bein signal communication with each other using an Ethernet cable or WiFiconnection. The user interface 108 is configured to send a servicerequest 101 to the remote controller 114 to request information and topresent the requested information to the customer. The user interface108 may comprise a display, speakers, a printer, buttons, switches,keypads, touchscreens, touchpads, card readers, microphones, camera, anetwork interface, or any other suitable type of hardware as would beappreciated by one of ordinary skill in the art.

Local Controller

The local controller 106 is also located at the first location 103. Thelocal controller 106 may be any suitable network device or server (e.g.a client or proxy server) configured to communicate data between thefuel dispenser terminals 102 and the remote controller 114. The localcontroller 106 may be formed by one or more physical devices configuredto provide services and resources (e.g. data and/or hardware resources)for the fuel terminal devices 102 located at the first location 103. Forexample, the local controller 106 may be a proxy server that acts as anintermediary for exchanging data between fuel dispenser terminals 102and the remote controller 114. An example of the local controller 106 inoperation is described in FIGS. 2A-2B.

The local controller 106 and the remote controller 114 may be in signalcommunication with each other over a network connection 116. The networkmay be any suitable type of wireless and/or wired network including, butnot limited to, all or a portion of the Internet, an Intranet, a privatenetwork, a public network, a peer-to-peer network, the public switchedtelephone network, a cellular network, a local area network (LAN), ametropolitan area network (MAN), a wide area network (WAN), and asatellite network. The network may be configured to support any suitabletype of communication protocol as would be appreciated by one ofordinary skill in the art upon viewing this disclosure.

Remote Controller

The remote controller 114 is located at a second location 105 that isremote (e.g. geographically different) from the first location 103. Theremote controller 114 may be any suitable network device or server aswould be appreciated by one of ordinary skill in the art. For example,the remote controller 114 may be a server located in a remote serverfarm or data center. The remote controller 114 may be formed by one ormore physical devices configured to provide services and resources (e.g.data and/or hardware resources) for the network-enabled fuel dispensingsystem 100. For example, the remote controller 114 may be a proxy serverthat acts as an intermediary for exchanging data between localcontroller 106 and the service processor 118. Additional informationabout the remote controller 114 is described in FIG. 3 . An example ofthe remote controller 114 in operation is described in FIGS. 2A-2B.

The remote controller 114 is configured to provide instructions foroperating and maintaining the fuel dispenser terminals 102. For example,the remote controller 114 may be configured to store and uploadconfiguration files 312 to the fuel dispenser terminals 102.Configuration files 312 comprise instructions for configuring thehardware and/or software of a fuel dispenser terminal 102. Examples ofconfiguration files 312 include, but are not limited to, firmwareupdates, BIOS updates, and software updates. The remote controller 114may be configured to upload configuration files 312 to one or more fueldispenser terminals 102 periodically or on-demand.

As another example, the remote controller 114 may be configured todownload and store event logs 314 from the fuel dispenser terminals 102.Event logs 314 comprise information about the operation history of thefuel dispenser terminals 102. For instance, event logs 314 may compriseinformation about a quantity of fuel dispensed, timestamps fortransactions made by the fuel dispenser terminals 102, or any other typeof information associated with the fuel dispenser terminals 102. Theremote controller 114 may be configured to periodically request and/orreceive event log information. For instance, the remote controller 114may be configured to receive event log information every thirty seconds,every minute, every thirty minutes, every hour, or at any suitable timeinterval.

The remote controller 114 is further configured to exchange informationwith the fuel dispenser terminals 102. Conventional fuel dispensingsystems use end-to-end encryption for information that is transmittedbetween a fuel dispenser terminal 102 and a service processor 118. Inthese systems, devices between the fuel dispenser terminal 102 and theservice processor 118 are unable to access or view information that istransmitted between the fuel dispenser terminal 102 and the serviceprocessor 118. In addition, the identity of the customer is unknownunless the customer provides an alternative identifier such as a loyaltycard number. This means that conventional systems are unable to providepersonalized information and offers for a customer because the identityof the customer is typically unknown.

In contrast, the remote controller 114 is configured to decrypt theservice request 101 to determine the identity of a customer beforesending the service request 101 to the service processor 118. Forexample, the remote controller 114 may be configured to receive anencrypted service request 101 that comprises card information (e.g. acard number) associated with a customer from a fuel dispenser terminal102. The service request 101 is sent by the fuel dispenser terminal 102to request a fuel purchase for the customer. The remote controller 114is configured to decrypt the service request 101 and to identify thecard information associated with the customer in the service request101. The remote controller 114 is configured to use the card informationto determine the identity of the customer. This means that the remotecontroller 114 can identify the customer based on their card informationregardless of whether the customer provides any alternative identifiers.For example, the remote controller 114 may use the card information toidentify a customer profile 322 associated with the customer. In thisexample, customer profiles 322 comprise card information associated withdifferent customers. The remote controller 114 may use the cardinformation (e.g. a card number) from the service request 101 to searchfor customer profiles 322 that contain matching card information. Thecustomer profile 322 may further comprise other information associatedwith a customer. For example, a customer profile 322 may comprisepersonal information 324, card information 326, transaction historyinformation 328, alternative identifiers 330 (e.g. loyalty cardidentifiers), or any other suitable type of information associated witha customer.

The remote controller 114 may also track other purchases andtransactions for the customer based on their card information. Thisallows the remote controller 114 to identify offers for products andservices that are relevant to the customer based on the previoustransaction history associated with the customer's card information. Thefuel dispenser terminal 102 may use the service request 101 to requestpersonalized information or offers for the customer. For example, theremote controller 114 may generate a personalized offer 107 thatincludes a coupon 316 for a product for the customer based on theirtransaction history information 328. Other examples of personalizedoffers 107 and information include, but are not limited to, vouchers orcoupons 316 for products, an advertisement 318, product information,news information, or any other suitable type of information. The remotecontroller 114 generates the personalized offer 107 for the customer andsends the personalized offer 107 back to the fuel dispenser terminal102.

In one embodiment, the remote controller 114 is configured to receive auser response 112 from the fuel dispenser terminal 102 in response tosending a personalized offer 107 (e.g. a coupon 316 for a product) tothe fuel dispenser terminal 102. The user response 112 indicates thatthe personalized offer 107 was accepted. In response to determining thatthe personalized offer 107 was accepted, the remote controller 114 mayupdate the service request 101 by adding a purchase of a product to afuel purchase in the service request 101. As discussed above,conventional fuel dispensing systems typically used end-to-endencryption for information that is transmitted between the fueldispenser terminal 102 and the service processor 118. This means thatthese systems are unable to modify or add additional purchases torequests that are sent to the service processor 118. In contrast, theremote controller 114 is able to modify an existing purchase requestbefore the remote controller 114 sends the service request 101 to theservice processor 118.

The remote controller is further configured to re-encrypt the servicerequest 101 and send the service request 101 to the service processor118 to request authorization for dispensing fuel. Once the servicerequest 101 has been processed, the remote controller 114 is configuredto receive an authorization confirmation 120 from the service processor118, to generate an authorization token 122 in response to receiving theauthorization confirmation 120, and to send the authorization token 122to the fuel dispenser terminal 102. The authorization token 122 is usedto indicate to the fuel dispenser terminal 102 that the fuel dispenserterminal 102 is authorized to begin dispensing fuel to the customer. Insome embodiments, the authorization token 122 may also be used forretrieving a product or service for an accepted personalized offer 107.For example, the fuel dispenser terminal 102 may print a representationof the authorization token 122 which may be used by the customer toretrieve a product or service from the first location 103. Once the fueldispenser terminal 102 has completed dispensing fuel to the customer,the remote controller 114 is configured to send a service completemessage 124 to the service processor 118 to finalize the fuel purchaseand any other purchases.

Service Processor

In one embodiment, the service processor 118 is configured to authorizea customer for a purchase and to facilitate the transaction from thecustomer's account. For example, the service processor 118 may beconfigured to authorize a fuel purchase based on card information for acustomer, to send an authorization confirmation, and to process atransaction for the fuel purchase when the fuel dispenser terminal 102is finished providing fuel to the customer. The service processor 118may be configured to process payments using credit cards, debit cards,gift cards, or any suitable type of card payment. In some embodiments,the service processor 118 may be associated with a third-party such as afinancial institute, banking facilities, or a credit card company.

Information Control Process for the Network-Enabled Fuel DispensingSystem

FIGS. 2A and 2B combine to describe an embodiment of an informationcontrol method 200 for a network-enabled fuel dispensing system 100.Method 200 may be employed by the network-enabled fuel dispensing system100 to facilitate the flow of communication between a fuel dispenserterminal 102 and the remote controller 114. As an example, a customermay interact with the fuel dispenser terminal 102 to request fuelingpurchase and other personalized offers 107.

Referring to FIG. 2A, at step 202, the fuel dispenser terminal 102generates a service request 101 comprising card information for acustomer. The service request 101 is used to request a fuel purchase forthe customer. For example, a customer may interact with the userinterface 108 of the fuel dispenser terminal 102 to provide cardinformation by inserting or swiping a payment card. The service request101 may comprise a card number (e.g. a primary account number (PAN)) fora credit card, a debit card, a gift card, or any other suitable type ofpayment card. In some embodiments, the service request 101 may furthercomprise a card holder name, a security code, an expiration date, a zipcode, any other suitable type of information associated with a paymentcard. The fuel dispenser terminal 102 may obtain the card informationfrom the customer and use the card information to generate a servicerequest 101. The service request 101 may be any suitable type of messageand format as would be appreciated by one of ordinary skill in the art.

At step 204, the fuel dispenser terminal 102 encrypts the servicerequest 101. The fuel dispenser terminal 102 may employ any suitabletype of tokenization or encryption technique for encrypting the servicerequest 101 as would be appreciated by one of ordinary skill in the art.Examples of encryption techniques include, but are not limited to,Pretty Good Privacy (PGP), Secure Shell (SSH), Secure Socket Layer(SSL), and Transport Layer Security (TLS). For example, the fueldispenser terminal 102 may apply an SSH public encryption key to theservice request 101 to generate an encrypted service request 101. Atstep 206, the fuel dispenser terminal 102 sends the encrypted servicerequest 101 to the remote controller 114 via the local controller 106.At step 208, the local controller 106 receives the encrypted servicerequest 101 and sends the encrypted service request 101 to the remotecontroller 114.

At step 210, the remote controller 114 receives the encrypted servicerequest 101 and decrypts the encrypted service request 101. The remotecontroller 114 may employ any suitable type of detokenization ordecryption technique to decrypt the encrypted service request 101 aswould be appreciated by one of ordinary skill in the art. Examples ofdecryption techniques include, but are not limited to, PGP, SSH, SSL,and TSL. For example, the remote controller 114 may apply an SSH privateencryption key to the encrypted service request 101 to decrypt theservice request 101. Once the service request 101 is decrypted, theremote controller 114 is able to extract the card information from theservice request 101. The remote controller 114 may also extract anyother information provided by the fuel dispenser terminal 102 in theservice request 101.

At step 212, the remote controller 114 determines an identity of thecustomer based on the card information associated with the customer inthe decrypted service request 101. As an example, the remote controller114 may use card information (e.g. a card number) from the servicerequest 101 to identify a corresponding customer profile 322 thatincludes matching card information. For instance, the remote controller114 may use the card number as a search token to identify a customerprofile 322 that also contains the same card number. In this example,the remote controller 114 uses card information to identify a customer.This means that the customer does not need to provide an alternativeidentifier (e.g. a loyalty card) to be identified. The customer profile322 is uniquely linked with the customer and provides information aboutthe identity of the customer.

At step 214, the remote controller 114 generates a personalized offer107 for the customer based on the identity of the customer. In oneembodiment, the personalized offer 107 comprises one or more coupons316. For example, the remote controller 114 may select a coupon 316 forthe customer based on information in the customer's customer profile322. The coupon 316 may be associated with products that are availableat the first location 103 where the fuel dispenser terminal 102 islocated. The coupon 316 may be for a discounted or complementary product(e.g. food or beverage) or service. As an example, the remote controller114 may use inventory information 320 to identify products and servicesthat are available at the first location 103. The inventory information320 may comprise product information, pricing information, stockavailability information, and/or any other suitable type of informationabout the products and services available at the first location 103. Theremote controller 114 may also identify transaction history information328 for the customer from their customer profile 322. The transactionhistory information 328 comprises information about products that thecustomer has previously purchased. In this example, the remotecontroller 114 may identify a product previously purchased by thecustomer based on their transaction history information 328 and select acoupon 316 for the identified, similar, or complementary product. Forexample, the remote controller 114 may access the customer's transactionhistory information 328 to identify products that the customer haspreviously purchased and may select a coupon 316 for a drink that thecustomer has previously purchased. As another example, the remotecontroller 114 may select a coupon 316 for a drink from the same brandthat the customer has previously purchased. As another example, theremote controller 114 may select a coupon 316 for a food item (e.g.pizza) that complements a drink the customer has previously purchased.In other examples, the remote controller 114 may use any otherinformation or combination of information from the customer's customerprofile 322 to select a coupon 316 for the customer.

In one embodiment, some coupons 316 may only be available or offered oncertain days or within certain time windows. For example, some coupons316 may only be offered on the weekend, in the morning, or after workhours. Here, the remote controller 114 determines a timestamp for whenthe service request 101 was received by the remote controller 114 andselects a coupon 316 based at least in part on the timestamp. Forinstance, the remote controller 114 may determine that the servicerequest 101 was received before 8:00 am, after 5:00 pm, during the week,or on the weekend based on a timestamp associated with when the servicerequest 101 was received. In this example, the remote controller 114 mayselect the coupon 316 based at least in part on the date and/or timewhen the service request 101 was received. As an example, the remotecontroller 114 may determine that the service request 101 was receivedin the morning and may select a coupon for a breakfast product (e.g.coffee) that the customer has previously purchased.

In one embodiment, the personalized offer 107 may comprise one or moreadvertisements 318. The remote controller 114 may select one or moreadvertisements 318 for the customer based on information in theircustomer profile 322 and/or a timestamp for when the transactioninformation 101 was received. For example, the remote controller 114 mayaccess the customer's transaction history information 328 to identifyproducts that the customer has previously purchased and may select anadvertisement related to the identified product. In other embodiments,the remote controller 114 may select any other suitable type ofinformation for the customer. The remote controller 114 compiles theselected information to generate the personalized offer 107 for thecustomer.

At step 216, the remote controller 114 sends the personalized offer 107to the fuel dispenser terminal 102 via the local controller 106. At step218, the local controller 106 receives the personalized offer 107,determines the target fuel dispenser terminal 102, and sends thepersonalized offer 107 to the fuel dispenser terminal 102.

At step 220, the fuel dispenser terminal 102 displays the personalizedoffer 107 to the customer. The fuel dispenser terminal 102 may presentone or more coupons 316, advertisements 318, and/or any otherinformation that was sent by the remote controller 114 to the customerusing a display of the user interface 108. For example, the fueldispenser terminal 102 may present a coupon 316 for a product that isavailable at the first location 103 on a graphical user interface forthe customer.

At step 222, the fuel dispenser terminal 102 receives a user response112 in response to presenting the personalized offer 107 to thecustomer. The customer may interact the user interface 108 of the fueldispenser terminal 102 to generate a user response 112 that indicateswhether the customer accepts or declines a personalized offer 107 (e.g.a coupon 316). For example, the customer may interact with a touchscreenor button the fuel dispenser terminal 102 to indicate whether thecustomer accepts or declines a coupon 316 for a product that provided inthe personalized offer 107. At step 224, the fuel dispenser terminal 102sends the user response 112 to the remote controller 114 via the localcontroller 106. At step 226, the local controller 106 receives the userresponse 112 and sends the user response 112 to the remote controller114.

At step 228, the remote controller 114 receives the user response 112and determines whether the personalized offer 107 was accepted based onthe user response 112. For example, the user response 112 may compriseone or more flag bits or values that are used to indicate whether thepersonalized offer 107 was accepted. The remote controller 114 proceedsto step 229 in response to determining that the personalized offer 107was accepted.

At step 229, the remote controller 114 updates the service request 101based on the user response 112. For example, the remote controller 114updates the service request 101 by adding a purchase of a productcorresponding with the coupon 112 to the fuel purchase in the originalservice request 101. Here, the remote controller 114 modifies theoriginal service request 101 to include additional purchases beforesending the service request 101 to the service processor 118. Thisprocess allows the network-enabled fuel dispensing system 100 to reducethe number of individual service requests 101 that are sent to theservice processor 118. Reducing the number of service request 101improves the operation of the system by reducing network traffic andimproving bandwidth utilization. Returning to step 228, the remotecontroller 114 proceeds to step 230 in response to determining that thepersonalized offer 107 was not accepted.

At step 230, the remote controller 114 encrypts the service request 101.The remote controller 114 may encrypt the service request 101 using aprocess similar to the process described in step 204. For example, theremote controller 14 may apply the same public encryption key (e.g. anSSH public encryption key) that was used in step 204 to the servicerequest 101 to re-encrypt the service request 101. At step 232, theremote controller 114 sends the encrypted service request 101 to theservice processor 118 to request authorization for dispensing fuel.

At step 234, service processor 118 processes the service request 101. Inone embodiment, the service processor 118 decrypts the encrypted servicerequest 101 and authorizes a payment (e.g. a fuel purchase paymentand/or a product purchase payment) based on the card informationprovided by the service request 101. The service processor 118 decryptthe encrypted service request 101 using a process similar to the processdescribed in step 210. For example, the service processor 118 may applythe same private encryption key (e.g. an SSH private encryption key)that was used in step 210 to the encrypted service request 101 todecrypt the service request 101. At step 236, the service processor 118sends an authorization confirmation 120 to the remote controller 114 inresponse to authorizing the payment. The authorization confirmation 120indicates that the customer has been approved for the requestedpurchases based on their card information.

At step 238, the remote controller 114 receives the authorizationconfirmation 120 and generates an authorization token 122 in response toreceiving the authorization confirmation 120. The authorization token122 may be any suitable identifier that can be presented or used toretrieve the product or service corresponding with an acceptedpersonalized offer 107. As an example, the remote controller 114generates an alphanumeric code that represents the authorization token122. As another example, the remote controller 114 generates a barcodethat represents the authorization token 122. Examples of barcodesinclude, but are not limited to, Universal Product Codes (UPCs) andtwo-dimensional barcodes (e.g. quick response (QR) codes). At step 240,the remote controller 114 sends the authorization token 122 to the fueldispenser terminal 102 via the local controller 106. At step 242, thelocal controller 106 receives the authorization token 122 and sends theauthorization token 122 to the fuel dispenser terminal 102.

At step 244, the fuel dispenser terminal 102 receives the authorizationtoken 122 and outputs the authorization token 122. For example, the fueldispenser terminal 102 may output the authorization token 122 byprinting a representation of the authorization token 122 onto a ticket.For instance, the fuel dispenser terminal 102 may print an alphanumericcode or barcode that represents the authorization token 122 onto aticket. In this example, the customer can use the ticket to retrieve theaccepted offer from a store 104 at the first location 103. As anotherexample, the fuel dispenser terminal 102 may output the authorizationtoken 122 by displaying the authorization token 122 to the customer on adisplay of the user interface 108.

As another example, the fuel dispenser terminal 102 may output theauthorization token 122 by sending the authorization token 122 to adevice located at the first location 103. For instance, the fueldispenser terminal 102 may send the authorization token 122 to apoint-of-sale (POS) device (e.g. a register) in a store 104 at the firstlocation 103. In this example, the customer is able to go into the store104 to retrieve their product without having to perform a transactionfor the product within the store 104. As another example, the fueldispenser terminal 102 may send the authorization token 122 to thecustomer's user device. In this example, the customer can present theauthorization token 122 from user device to retrieve the accepted offerfrom the store 104. The fuel dispenser terminal 102 may send theauthorization token 122 to one or more devices using short messageservice (SMS), nearfield communication (NFC), WiFi, Bluetoothcommunication, or any other suitable type of wired or wirelesscommunication technique. In other examples, the fuel dispenser terminal102 may output the authorization token 122 to the customer using anyother suitable technique as would be appreciated by one of ordinaryskill in the art.

At step 246, the fuel dispenser terminal 102 dispenses fuel to thecustomer in response to receiving the authorization token 122. Forexample, the user interface 108 sends control signals to the fueldispensing system 110 to initiate and control the dispensing of fuel tothe customer. At step 248, once the customer has finished receivingfuel, the fuel dispenser terminal 102 sends a service complete message124 to the remote controller 114 via the local controller 106. Theservice complete message 124 may be any suitable type of message thatindicates that the fuel dispenser terminal 102 has completed dispensingfuel to the customer. In one embodiment, the service complete message124 comprises fuel purchase information that indicates a cost associatedwith an amount of fuel that is dispended to the customer from the fueldispenser terminal 102. At step 250, the local controller 106 receivesthe service complete message 124 and sends the service complete message124 to the remote controller 114. At step 252, the remote controller 114receives the service complete message 124 and sends the service completemessage 124 to the service processor 118.

At step 254, the service processor 118 finalizes the fuel servicesession for the customer. For example, the service processor 118 mayprocess a payment using the customer's card information for the purchaseof fuel and/or any other products.

Remote Controller Configuration

FIG. 3 is a schematic diagram of an embodiment of a remote controller114 for the network-enabled fuel dispensing system 100. The remotecontroller 114 comprises a processor 302, a memory 304, and a networkinterface 306. The remote controller 114 may be configured as shown orin any other suitable configuration.

The processor 302 comprises one or more processors operably coupled tothe memory 304. The processor 302 is any electronic circuitry including,but not limited to, state machines, one or more central processing unit(CPU) chips, logic units, cores (e.g. a multi-core processor),field-programmable gate array (FPGAs), application specific integratedcircuits (ASICs), or digital signal processors (DSPs). The processor 302may be a programmable logic device, a microcontroller, a microprocessor,or any suitable combination of the preceding. The processor 302 iscommunicatively coupled to and in signal communication with the memory304. The one or more processors are configured to process data and maybe implemented in hardware or software. For example, the processor 302may be 8-bit, 16-bit, 32-bit, 64-bit or of any other suitablearchitecture. The processor 302 may include an arithmetic logic unit(ALU) for performing arithmetic and logic operations, processorregisters that supply operands to the ALU and store the results of ALUoperations, and a control unit that fetches instructions from memory andexecutes them by directing the coordinated operations of the ALU,registers and other components.

The one or more processors are configured to implement variousinstructions. For example, the one or more processors are configured toexecute instructions to implement the remote control engine 308. In thisway, processor 302 may be a special purpose computer designed toimplement function disclosed herein. In an embodiment, the remotecontrol engine 308 are implemented using logic units, FPGAs, ASICs,DSPs, or any other suitable hardware. The remote control engine 308 isconfigured to perform the operations for the remote controller 114described in FIGS. 1, 2A, and 2B.

The memory 304 comprises one or more disks, tape drives, or solid-statedrives, and may be used as an over-flow data storage device, to storeprograms when such programs are selected for execution, and to storeinstructions and data that are read during program execution. The memory304 may be volatile or non-volatile and may comprise read-only memory(ROM), random-access memory (RAM), ternary content-addressable memory(TCAM), dynamic random-access memory (DRAM), and static random-accessmemory (SRAM).

The memory 304 is operable to store remote control instructions 310,configuration files 312, event logs 314, coupons 316, advertisements318, inventory information 320, customer profiles 322, personalinformation 324, card information 326, transaction history 328,alternative identifiers 330, and/or any other data or instructions. Theremote control instructions 310 may comprise any suitable set ofinstructions, logic, rules, or code operable to execute the remotecontrol engine, respectively.

The configuration files 312 and the event files 314 are similar to theconfiguration files 312 and the event logs 314 described in FIG. 1 ,respectively. The coupons 316, advertisements 318, and inventoryinformation 320 are configured similar to the coupons 316, theadvertisements 318, and inventory information 320 described in FIGS. 2Aand 2B, respectively.

The customer profiles 322 are similar to the customer profiles 322described in FIGS. 1, 2A, and 2B. The personal information 324 maycomprise demographic information, address information, accountinformation, phone numbers, email addresses, or any other suitable typeof information associated with a customer. The card information 326 maycomprise a card number for a credit card, a debit card, a gift card, orany other suitable type of payment card. The transaction history 328 maycomprise fuel purchase history, product purchase history, onlinepurchase history, or any other suitable purchase history associated witha customer. The alternative identifiers 330 may comprise loyalty cardidentifiers, a phone number, an email address, or any other suitabletype of identifiers associated with a customer.

The network interface 306 is configured to enable wired and/or wirelesscommunications. The network interface 306 is configured to communicatedata between the remote controller 114 and other devices (e.g. the fueldispenser terminal 102, the local controller 106, and the serviceprocessor 118), systems, or domain. For example, the network interface306 may comprise a WIFI interface, a local area network (LAN) interface,a wide area network (WAN) interface, a modem, a switch, or a router. Theprocessor 302 is configured to send and receive data using the networkinterface 306. The network interface 306 may be configured to use anysuitable type of communication protocol as would be appreciated by oneof ordinary skill in the art.

While several embodiments have been provided in the present disclosure,it should be understood that the disclosed systems and methods might beembodied in many other specific forms without departing from the spiritor scope of the present disclosure. The present examples are to beconsidered as illustrative and not restrictive, and the intention is notto be limited to the details given herein. For example, the variouselements or components may be combined or integrated in another systemor certain features may be omitted, or not implemented.

In addition, techniques, systems, subsystems, and methods described andillustrated in the various embodiments as discrete or separate may becombined or integrated with other systems, modules, techniques, ormethods without departing from the scope of the present disclosure.Other items shown or discussed as coupled or directly coupled orcommunicating with each other may be indirectly coupled or communicatingthrough some interface, device, or intermediate component whetherelectrically, mechanically, or otherwise. Other examples of changes,substitutions, and alterations are ascertainable by one skilled in theart and could be made without departing from the spirit and scopedisclosed herein.

To aid the Patent Office, and any readers of any patent issued on thisapplication in interpreting the claims appended hereto, applicants notethat they do not intend any of the appended claims to invoke 35 U.S.C. §112(f) as it exists on the date of filing hereof unless the words “meansfor” or “step for” are explicitly used in the particular claim.

The invention claimed is:
 1. A network-enabled fuel dispensing system,comprising: a fuel dispenser terminal located at a first location,comprising a first processor configured to: encrypt a service requestfor a fuel purchase using a public encryption key, wherein the servicerequest comprises card information associated with a customer; send theservice request to a service processor via a remote controller, wherein:the remote controller is located at a second location; the serviceprocessor is located at a third location; the second location isdifferent from the third location; and the remote controller and theservice processor are separate devices from one another; receive apersonalized offer for the customer in response to sending the servicerequest, wherein the personalized offer comprises a coupon for a productavailable at the first location; display at least a portion of thepersonalized offer; receive a user response that indicates the couponwas accepted; send the user response to the remote controller; receivean authorization token for retrieving the product from the firstlocation in response to sending the user response to the remotecontroller; and output the authorization token, wherein outputting theauthorization token comprises wirelessly transmitting the authorizationtoken to a user device that is associated with the customer; and theremote controller located at the second location that is different fromthe first location, comprising a second processor configured to:intercept the service request transmitted by the fuel dispenser terminalto the service processor; determine a timestamp for when the servicerequest is received; decrypt the service request using a privateencryption key; identify a customer profile for the customer based onthe card information associated with the customer; access transactionhistory associated with the card information, wherein the transactionhistory comprises information about a set of products that the customerhas purchased in the past using a card associated with the cardinformation; access inventory information associated with the firstlocation, wherein the inventory information indicates products that areavailable at the first location; identify the product that is availableat the first location and that the customer has purchased before basedat least in part on the customer profile, the transaction history, andthe inventory information, wherein the product is a product relevant tothe customer; select the coupon associated with the identified productbased at least in part upon the timestamp when the service request isreceived, such that the selected coupon is active at the timestamp; sendthe personalized offer identifying the product available at the firstlocation in response to receiving the service request; receive the userresponse; determine the coupon was accepted based on the user response;update the service request in response to determining that the couponwas accepted, wherein updating the service request comprises adding apurchase of the product to the fuel purchase in the service request;re-encrypt the service request using the same public encryption key thatwas used by the fuel dispenser terminal, wherein re-encrypting theservice request reconstructs the service request sent by the fueldispenser terminal; send the re-encrypted service request to the serviceprocessor; receive an authorization confirmation in response to sendingthe re-encrypted service request to the service processor; generate theauthorization token in response to receiving the authorizationconfirmation; and send the authorization token to the fuel dispenserterminal.
 2. The system of claim 1, wherein outputting the authorizationtoken comprises printing a representation of the authorization tokenonto a ticket.
 3. The system of claim 1, wherein outputting theauthorization token comprises sending the authorization token to adevice located at the first location.
 4. The system of claim 1, whereingenerating the authorization token comprises generating an alpha numericcode.
 5. The system of claim 1, wherein generating the authorizationtoken comprises generating a barcode.
 6. The system of claim 1, furthercomprising a local controller located at the first location, wherein:the local controller is in signal communication with the fuel dispenserterminal and the remote controller; and the local controller isconfigured to communicate data between the fuel dispenser terminal andthe remote controller.
 7. An information control method, comprising:encrypting, by a fuel dispenser terminal located at a first location, aservice request for a fuel purchase using a public encryption key,wherein the service request comprises card information associated with acustomer; sending, by the fuel dispenser terminal, the service requestto a service processor via a remote controller, wherein: the remotecontroller is located at a second location; the service processor islocated at a third location; the second location is different from thethird location; and the remote controller and the service processor areseparate devices from one another; intercepting, by the remotecontroller located at the second location that is different from thefirst location, the service request transmitted by the fuel dispenserterminal to the service processor; determining, by the remotecontroller, a timestamp for when the service request is received;decrypting, by the remote controller, the service request using aprivate encryption key; identifying, by the remote controller, acustomer profile for the customer based on the card informationassociated with the customer; accessing, by the remote controller,transaction history associated with the card information, wherein thetransaction history comprises information about a set of products thatthe customer has purchased in the past using a card associated with thecard information; accessing, by the remote controller, inventoryinformation associated with the first location, wherein the inventoryinformation indicates products that are available at the first location;identifying, by the remote controller, a product that is available atthe first location and that the customer has purchased before based atleast in part on the customer profile, the transaction history, and theinventory information, wherein the product is relevant to the customer;selecting, by the remote controller, a coupon associated with theidentified product based at least in part upon the timestamp when theservice request is received, such that the selected coupon is active atthe timestamp; sending, by the remote controller, a personalized offerfor the customer to the fuel dispenser terminal, wherein thepersonalized offer comprises the coupon for the product available at thefirst location; displaying, by the fuel dispenser terminal, at least aportion of the personalized offer; receiving, by the fuel dispenserterminal, a user response that indicates the coupon was accepted;sending, by the fuel dispenser terminal, the user response to the remotecontroller; determining, by the remote controller, the coupon wasaccepted based on the user response; updating, by the remote controller,the service request in response to determining that the coupon wasaccepted, wherein updating the service request comprises adding apurchase of the product to the fuel purchase in the service request;re-encrypting, by the remote controller, the service request using thesame public key that was used by the fuel dispenser terminal, whereinre-encrypting the service request reconstructs the service request sentby the fuel dispenser terminal; sending, by the remote controller, there-encrypted service request to the service processor; receiving, by theremote controller, an authorization confirmation in response to sendingthe re-encrypted service request to the service processor; generating,by the remote controller, an authorization token for retrieving theproduct from the first location in response to receiving theauthorization confirmation; sending, by the remote controller, theauthorization token to the fuel dispenser terminal; and outputting, bythe fuel dispenser terminal, the authorization token, wherein outputtingthe authorization token comprises wirelessly transmitting theauthorization token to a user device that is associated with thecustomer.
 8. The method of claim 7, wherein outputting the authorizationtoken comprises printing, by the fuel dispenser terminal, arepresentation of the authorization token onto a ticket.
 9. The methodof claim 7, wherein outputting the authorization token comprisessending, by the fuel dispenser terminal, the authorization token to adevice located at the first location.
 10. The method of claim 7, whereingenerating the authorization token comprises generating, by the remotecontroller, an alpha numeric code.
 11. The method of claim 7, whereingenerating the authorization token comprises generating, by the remotecontroller, a barcode.
 12. The method of claim 7, further comprising:receiving, by a local controller located at the first location, anencrypted service request from the fuel dispenser terminal; and sending,by the local controller, the encrypted service request to the remotecontroller.
 13. A device, comprising: a network interface device insignal communication with a fuel dispenser terminal located at a firstlocation, configured to receive: a service request for a fuel purchasecomprising card information associated with a customer, wherein theservice request is encrypted using a public encryption key by the fueldispenser terminal; and a user response for a coupon for a productavailable at the first location; and a processor operably coupled to thenetwork interface device, configured to: intercept the service requesttransmitted by the fuel dispenser terminal to a service processor via aremote controller, wherein: the remote controller is located at a secondlocation; the service processor is located at a third location; thesecond location is different from the third location; and the remotecontroller and the service processor are separate devices from oneanother; determine a timestamp for when the service request is received;decrypt the service request using a private encryption key; identify acustomer profile for the customer based on the card informationassociated with the customer; access transaction history associated withthe card information, wherein the transaction history comprisesinformation about a set of products that the customer has purchased inthe past using a card associated with the card information; accessinventory information associated with the first location, wherein theinventory information indicates products that are available at the firstlocation; identify the product that is available at the first locationand that the customer has purchased before based at least in part on thecustomer profile, the transaction history, and the inventoryinformation, wherein the product is relevant to the customer history;select the coupon associated with the identified product based at leastin part upon the timestamp when the service request is received, suchthat the selected coupon is active at the timestamp; send a personalizedoffer identifying the product available at the first location to thefuel dispenser terminal; determine the coupon was accepted based on theuser response; update the service request in response to determiningthat the coupon was accepted, wherein updating the service requestcomprises adding a purchase of the product to the fuel purchase in theservice request; re-encrypt the service request using the same publicencryption key that was used by the fuel dispenser terminal, whereinre-encrypting the service request reconstructs the service request sentby the fuel dispenser terminal; send the re-encrypted service request tothe service processor; receive an authorization confirmation in responseto sending the re-encrypted service request to the service processor;generate an authorization token for retrieving the product in responseto receiving the authorization confirmation; and send the authorizationtoken to the fuel dispenser terminal, wherein sending the authorizationtoken to the fuel dispenser terminal triggers the fuel dispenserterminal to wirelessly transmit the authorization token to a user devicethat is associated with the customer.
 14. The device of claim 13,wherein the processor is further configured to send the personalizedoffer that comprises the coupon for the product to the fuel dispenserterminal in response to receiving the service request.
 15. The device ofclaim 13, wherein the personalized offer further comprises anadvertisement.
 16. The device of claim 13, wherein generating theauthorization token comprises generating an alpha numeric code.
 17. Thedevice of claim 13, wherein generating the authorization token comprisesgenerating a barcode.